import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import { fileURLToPath, URL } from 'node:url'

export default defineConfig({
    plugins: [
        vue({
            template: {
                // 配置与Vue模板相关的选项
                compilerOptions: {
                    // 示例：配置全局模板编译选项
                    whitespace: 'condense'
                }
            }
        })
    ],
    resolve: {
        alias: {
            '@': fileURLToPath(new URL('./src', import.meta.url))
        }
    },
    css: {
        // 完全移除预处理器配置
        devSourcemap: true, // 开启CSS源映射便于调试
        modules: {
            localsConvention: 'camelCase' // CSS模块命名规则
        }
    },
    server: {
        port: 5173,
        open: '/login',
        hmr: {
            overlay: false // 禁用错误覆盖层
        }
    },
    build: {
        outDir: 'dist',
        assetsInlineLimit: 4096, // 小于4KB的资产内联
        cssCodeSplit: true, // 启用CSS代码分割
        rollupOptions: {
            output: {
                assetFileNames: 'assets/[name]-[hash][extname]' // 资产文件命名规则
            }
        }
    },
    optimizeDeps: {
        include: ['vue'] // 明确预构建的依赖
    }
})